package com.hthl.websocket;

import javax.websocket.Session;
import java.util.concurrent.ConcurrentHashMap;

public class SessionHolder {

    // 指定初始化容量，大小为2的幂，以减少扩容产生的性能消耗
    // 缓存 session 连接
    private static ConcurrentHashMap<Session, Integer> cachedSessions = new ConcurrentHashMap<>(256);

    /**
     * 添加会话
     *
     * @param session：当前会话
     * @param enterpriseId：企业id
     */
    public static void addCachedSessions(Session session, Integer enterpriseId) {
        cachedSessions.put(session, enterpriseId);
    }

    /**
     * 添加会话
     *
     * @param session：当前会话
     */
    public static void removeCachedSessions(Session session) {
        cachedSessions.remove(session);
    }

    public static ConcurrentHashMap<Session, Integer> getCachedSessions() {
        return cachedSessions;
    }
}
